
typedef int coord_t;         // coordinate type
typedef long long coord2_t;  // must be big enough to hold 2*max(|coordinate|)^2

typedef struct {
  	coord_t x, y;
} point_t;

coord2_t cross(const point_t O, const point_t A, const point_t B);
void convex_hull(int N, point_t *P, point_t *H);

